//
//  JZMBProgressHUD_Extended.h
//

#import <Foundation/Foundation.h>
#import "MBProgressHUD.h"

typedef void (^hud_block)(MBProgressHUD * hud);
/**
 *  HUD扩展,更换HUD时仅修改扩展即可
 */
@interface  UIView(MBProgressHUD_Extended)

- (MBProgressHUD *)ShowProgress;

- (MBProgressHUD *)ShowProgress:(bool)userInteractiion;

- (MBProgressHUD *)ShowHorizontalBarProgress:(NSString *)message;
- (MBProgressHUD *)ShowHorizontalBarProgress:(NSString *)message progress:(CGFloat)progress;

- (MBProgressHUD *)ShowProgress:(NSString *)message userInteractiion:(bool)userInteractiion delay:(float)seconds;

- (MBProgressHUD *)ShowProgress:(NSString *)message userInteractiion:(bool)userInteractiion;
- (MBProgressHUD *)ShowProgressMessage:(NSString *)message;
- (MBProgressHUD *)ShowProgressOnlyLabel:(NSString *)message delay:(float)seconds;

/**
 *  仅显示文本提示
 *
 *  @param message message description
 */
- (MBProgressHUD *)ShowProgressOnlyLabel:(NSString *)message;

- (MBProgressHUD *)showProgressWithBlock:(hud_block)block;

/**
 *  仅显示文本提示，但可以多行
 *
 *  @param message message description
 *
 */
- (MBProgressHUD *)showProgressOnlyDetailText:(NSString *)message;
- (MBProgressHUD *)showProgressOnlyDetailText:(NSString *)message delay:(float)seconds;

- (MBProgressHUD *)showProgressWithTitle:(NSString *)title Detail:(NSString *)detail;
- (MBProgressHUD *)showProgressWithTitle:(NSString *)title Detail:(NSString *)detail delay:(float)seconds;
/**
 *  带有动画移除
 */
- (void)removeProgress;
/**
 *  立即移除
 */
- (void)removeProgressImmediately;

@end
